<?php
//Ultima verificacion: 13-10-2014 ; 21-11-2014 ; 20-02-2015 (Ultima verificacion)
class M_institucion extends CI_Model {
	function _construct(){
		//Call the Model constructor
		parent::_construct();
	}
			
	//Este metodo se utiliza cuando queremos devolver el registro de una institucion usado generalmente en el formulario de modificar o visualizar
	function get($idInstitucion=null){
		$consulta = $this->db->query("SELECT institucion.*, (SELECT hash FROM archivo WHERE archivo.idArchivo=institucion.idArchivoEscudo LIMIT 1) AS hashArchivoEscudo,
															(SELECT hash FROM archivo WHERE archivo.idArchivo=institucion.idArchivo LIMIT 1) AS hashArchivo,															
															(SELECT localidad.idProvincia FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS idProvincia,
															(SELECT localidad.nombre FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS localidad,
															(SELECT provincia.nombre FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS provincia
									  FROM institucion
									  WHERE institucion.idInstitucion=".$this->db->escape($idInstitucion)." AND institucion.estado<>-1
									  LIMIT 1");
		return($consulta);
	}
	
	//Este metodo se utiliza cuando queremos devolver el registro de una institucion activo usado generalmente en el formulario de modificar o visualizar
	function getActivo($idInstitucion=null){
		$consulta = $this->db->query("SELECT institucion.*, (SELECT hash FROM archivo WHERE archivo.idArchivo=institucion.idArchivoEscudo LIMIT 1) AS hashArchivoEscudo,
															(SELECT hash FROM archivo WHERE archivo.idArchivo=institucion.idArchivo LIMIT 1) AS hashArchivo,															
															(SELECT localidad.idProvincia FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS idProvincia,
															(SELECT localidad.nombre FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS localidad,
															(SELECT provincia.nombre FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS provincia
									  FROM institucion
									  WHERE institucion.idInstitucion=".$this->db->escape($idInstitucion)." AND institucion.estado=1
									  LIMIT 1");
		return($consulta);
	}
	
	//Este metodo se utiliza para modificar los datos de la institucion excepto el escudo o el archivo
	function modificar($idInstitucion=null, $nombre=null, $facebook=null, $idArchivoEscudo=null, $descripcion=null, $idLocalidad=null, $domicilio=null, $telefonoFijo=null, $fax=null, $email=null, $emailFacebook=null, $web=null, $idArchivo=null, $notaMinima=null){
		$consulta = $this->db->query("UPDATE `institucion` 
									 SET `nombre` = ". $this->db->escape($nombre) .",
										 `facebook` = ". $this->db->escape($facebook) .",
										 `idArchivoEscudo` = ". $this->db->escape($idArchivoEscudo) .",
										 `descripcion` = ". $this->db->escape($descripcion) .",
										 `idLocalidad` = ". $this->db->escape($idLocalidad) .",
										 `domicilio` = ". $this->db->escape($domicilio) .",
										 `telefonoFijo` = ". $this->db->escape($telefonoFijo) .",
										 `fax` = ". $this->db->escape($fax) .",
										 `email` = ". $this->db->escape($email) .",
										 `emailFacebook` = ". $this->db->escape($emailFacebook) .",
										 `web` = ". $this->db->escape($web) .",
										 `idArchivo` = ". $this->db->escape($idArchivo) .",	
										 `notaMinima` = ". $this->db->escape($notaMinima) ."
							         WHERE `institucion`.`idInstitucion` = " . $this->db->escape($idInstitucion) . " LIMIT 1");
		return($this->db->affected_rows());
	}	
}
?>